home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / MRAC / Lengths / Modify / l-rest-revert-range < prev    next >
Lisp/Scheme  |  1998-08-11  |  607b  |  22 lines

  1. l-rest-revert-range range pattern
  2.  
  3. 0-based 
  4.  
  5. This function enables rest-lengths to be changed to note-lengths over a specified range. 
  6.  
  7. (l-rest-revert-range '(3 5) (qlength '20-11000))
  8. => (1/20 1/20 -1/20 1/20 1/20)
  9.  
  10. (setq len (qlength '((20-10101) (12-101 8-11) (20-11000) (8-0010))))
  11.  
  12. (setq range
  13.       (pick-rnd1 .23 :content 2
  14.                  (g-integer 0 (l-count :all :content len))))
  15. => ((2 5) (1 4) (0 3) (4 1))
  16.  
  17. internally to: ((2 5) (1 4) (0 3) (1 4)) 
  18.  
  19. (l-rest-revert-range range len)
  20. => ((1/20 -1/20 1/20 1/20 1/20) (1/12 1/12 1/12 1/8 1/8)
  21.     (1/20 1/20 1/20 -1/20 -1/20) (-1/8 1/8 1/8 1/8))
  22.